<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>逻辑运算符</title>
</head>
<body>
<script>
    /*JS中逻辑运算符 非 与 或
    *  !叹号   非
    *       可以对一个值进行非运算
    *         非运算是指对布尔值进行取反操作
    *          如果对一个值2次取反，它不会有变化
    *           如果对于非布尔值进行运算，先变成布尔值，然后在取反，
    *           可以利用这一特点，来将一个数据类型转换为布尔值
    *           可以对任意的数据类型取2次反 来将其转换为布尔值
    *           原理和 Boolean()函数一样
    *
    *   &&     与  (and 且)
    *           &&可以对符号两侧的值进行与运算 并返回结果
    *             如果第一个值是false 则不检查第二个值
    *           只要有一个false就是 false
    *  ||     或 只要有一个true就返回true
    *           只有2个都是false才返回false
    *           如果第一个值是true 则不检查第二个值
    * */
   // 1.!的应用  非 举例1
    var a=true;
        a=!a;
    console.log("a="+a);
    // 2.!的应用  非 举例2
    var b=true;
    b=!!b;
    console.log("b="+b);
    //3.&&应用1
    var c=true&&true;
       console.log("c="+c);
    //4.&&应用2
    var d=true&&false;
    console.log("d="+d);
    //5.&&应用3
    var e=false&&true;
    console.log("e="+e);
    //6.&& 与 应用4
    var g=false&&false;
    console.log("g="+g);
    //7.|| 或 应用
    var result=false||alert("hello");//alert("hello")是true  所以会弹出来对话框hello
     console.log("result="+result);
    //8.|| 或 应用
    var result1=true||alert("hello");//
    console.log("result1="+result1);
</script>
</body>
</html>